﻿using System;
using Castle.ActiveRecord;
using Castle.ActiveRecord.Queries;
using WCell.Constants;
using WCell.Core.Initialization;
using WCell.Util.Threading;
using WCell.RealmServer.Database;
using WCell.RealmServer.Entities;
using WCell.RealmServer.Global;

namespace Kingdoms
{
    [ActiveRecord]
    public class NPCDatabaseEntry : ActiveRecordBase<NPCDatabaseEntry>
    {
        private int id;
        private float x;
        private float y;
        private float z;
        private int mapid;
        private int territoryid;
        private int guardtype;
        private int countlevel;
        private int respawntime;

        [PrimaryKey]
        public int Id
        {
            get { return id; }
            set { id = value; }
        }

        [Property]
        public float X
        {
            get { return x; }
            set { x = value; }
        }

        [Property]
        public float Y
        {
            get { return y; }
            set { y = value; }
        }

        [Property]
        public float Z
        {
            get { return z; }
            set { z = value; }
        }

        [Property]
        public int MapID
        {
            get { return mapid; }
            set { mapid = value; }
        }

        [Property]
        public int TerritoryID
        {
            get { return territoryid; }
            set { territoryid = value; }
        }

        [Property]
        public int GuardType
        {
            get { return guardtype; }
            set { guardtype = value; }
        }

        [Property]
        public int CountLevel
        {
            get { return countlevel; }
            set { countlevel = value; }
        }

        [Property]
        public int RespawnTime
        {
            get { return respawntime; }
            set { respawntime = value; }
        }
    }
}
